# grep 命令
#作用: 从指定文件中查找指定的文本内容
#语法: grep [-n] word fileName

#-n 显示行号
#-i：忽略大小写（如 grep -ni Hello HelloWorld.java）。
#-w：精确匹配整个单词。
#-v：显示不包含匹配项的行,就是没有匹配项的行

# 加不加引号的区别
# 简单模式（无特殊字符或空格）：不加引号或加引号效果相同。
# 复杂模式（空格、正则、变量）：建议加引号以避免 Shell 的错误解析。
# 单引号（完全保护）和双引号（部分解析）根据具体需求选择。

# 案例:
# 1. 查找HelloWorld.java文件中出现的Hello字符串的位置
vim HelloWorld.java
vim 1.java
vim 2.java
grep Hello HelloWorld.java

# 2. 查找当前目录中所有.java结尾的文件中包含hello字符串的位置
grep hello *.java
grep -n hello *.java


#3. 什么时候需要加引号？

# 3.1 搜索模式包含特殊字符、正则表达式或空格时：
grep -n 'hello world' *.java
grep -n 'hello$' *.java
¥
# 3.2 搜索模式中包含变量，并希望变量被正确解析时（用双引号）：
pattern="hello"
grep -n "$pattern" *.java

# 3.3	如果你想确保模式不受 Shell 解析的影响，最好使用单引号。

